﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using WaterStreet.Core.Domain;

namespace WaterStreet.Core.Services
{
    public interface OrderService
    {

        /// <summary>
        /// 주문하기
        /// </summary>
        /// <param name="customer"></param>
        void SetOrderByCustomer(Customer customer);

        /// <summary>
        /// 하루 주문에 대한 리스트를 볼수 있어야 한다.
        /// </summary>
        /// <returns></returns>
        List<Order> GetListDailyOrder();

        /// <summary>
        /// 결제가 완료 된 주문 리스트
        /// </summary>
        /// <returns></returns>
        List<Order> GetListRosting();

        /// <summary>
        /// 결제 완료 처리
        /// </summary>
        void SetPaymentComplete(List<Order> orders); 

        /// <summary>
        /// 결제 완료 처리
        /// </summary>
        /// <param name="dailyOrder"></param>
        void SetPaymentComplete(Order orders);


        /// <summary>
        /// Rosting 완료 처리
        /// </summary>
        void SetRostingComplete(List<Order> rostings);

        /// <summary>
        /// Rostring 완료 처리
        /// </summary>
        /// <param name="rostring"></param>
        void SetRostingComplete(Order rostring);

        /// <summary>
        /// 배송 완료 처리
        /// </summary>
        /// <param name="rostring"></param>
        void SetSentComplete(Order rostring);

        /// <summary>
        /// 주문한 사람면 주문 내역 List
        /// </summary>
        /// <param name="customer"></param>
        /// <returns></returns>
        List<Order> GetRostingByCustomer(Customer customer);

    }
}
